package hu.blok1.veilingsite.client.data;

import hu.blok1.veilingsite.shared.Product;
import hu.blok1.veilingsite.shared.User;

import java.sql.ResultSet;
import java.util.List;

import com.google.gwt.user.client.rpc.AsyncCallback;

public interface AccountServiceAdminAsync {

	void ChangeUserStatus(String username, String newstatus,  AsyncCallback<Void> callback);
	void GetUserStatus(String username,  AsyncCallback<String> callback);
	void GetProductStatus(String titel,  AsyncCallback<String> callback);
	void ChangeProductStatus(String titel, String newstatus, AsyncCallback<Void> asyncCallback);
	void DeleteUser(String username, AsyncCallback<Void> asyncCallback);
	void DeleteProduct(String titel, AsyncCallback<Void> asyncCallback);
	void GetUserType(String username, AsyncCallback<String> callback);
	void ChangeUserType(String username, String newtype,
			AsyncCallback<Void> callback);
	void FindMultiUser(String keyword, AsyncCallback<List<User>> callback);
	void FindMultiProduct(String keyword, AsyncCallback<List<Product>> callback);
	void FindSingleUser(String keyword, AsyncCallback<User> callback);
	void FindSingleProduct(String keyword, AsyncCallback<Product> callback);
	void UpdateUser(String oldemail, String text, String text2, String text3,
			String text4, AsyncCallback<Void> asyncCallback);
	void UpdateProduct(int text, String text2, int text3, String text4,
			AsyncCallback<Void> asyncCallback);

}
